﻿using Google.Protobuf.WellKnownTypes;

namespace Elio.Sessions.Media;

public class MediaRecorderSession : BaseSession
{
    protected override string SessionName => base.SessionName = "MediaRecorder";

    protected override async Task OnReceive(string name, long sessionId, long futureId, params Any[] argv)
    {
        switch (name)
        {
            case "start":
                Start();
                break;

            case "stop":
                Stop();
                break;

            case "pause":
                Pause();
                break;

            case "resume":
                Resume();
                break;

            case "getFilename":
                GetFilename();
                break;

            case "upload":
                Upload();
                break;

            default:
                await base.OnReceive(name, sessionId, futureId, argv);
                break;
        }
    }

    private static void Start() { }
    private static void Stop() { }
    private static void Pause() { }
    private static void Resume() { }
    private static void GetFilename() { }
    private static void Upload() { }
}